import React, { Component } from 'react'

export default class App extends Component {
  // 1.挂载阶段
  constructor (props) { // 设定初始化的状态 以及 定义事件
    super(props)
    this.state = {}
  }
  // 1.挂载阶段 2.更新时阶段
  static getDerivedStateFromProps () { // 一般不使用
    return {}
  }
  // 1.挂载阶段 2.更新时阶段
  render() {
    return (
      <div>
        
      </div>
    )
  }
  // 1.挂载阶段
  componentDidMount () {
    // 数据的请求，DOM操作，实例化，延时器，定时器
  }

  // 2.更新时阶段
  shouldComponentUpdate (nextProps, nextState) { // 默认返回值为true -- 提升react性能的关键
    return true
  }
  // 2.更新时阶段
  getSnapshotBeforeUpdate () { // 一般不使用
  }
  // 2.更新时阶段
  componentDidUpdate (prevProps, prevState, snapshot) {
    // 有条件的请求数据，实例化，DOM操作
  }

  // 3.销毁阶段
  componentWillUnmount () {}

  // 4.错误异常
  static getDerivedStateFromError() {}
  // 4.错误异常
  componentDidCatch () {}
}
